package com.stbu;

import com.stbu.bean.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.ArrayList;
import java.util.List;

@Controller
@RequestMapping("/user") // 统一映射前缀
public class UserController {
    // 静态集合模拟数据库（测试用）
    private static List<User> userList = new ArrayList<>();

    // 跳转到注册页（路径由/toRegister改为/toReg）
    @RequestMapping("/toReg")
    public String toReg() {
        return "reg"; // 对应/WEB-INF/views/reg.jsp（视图名不变）
    }

    // 处理注册请求（路径由/register改为/reg，请求方式POST）
    @RequestMapping(value = "/reg", method = RequestMethod.POST)
    public String reg(User user, Model model) {
        // 简单验证：用户名和密码不为空
        if (user.getUsername() == null || user.getUsername().isEmpty()
                || user.getPassword() == null || user.getPassword().isEmpty()) {
            model.addAttribute("error", "用户名或密码不能为空！");
            return "reg"; // 验证失败，返回注册页
        }
        // 保存用户
        userList.add(user);
        System.out.println("注册成功：" + user);
        return "redirect:/user/toLogin"; // 注册成功，重定向到登录页
    }

    // 跳转到登录页（不变）
    @RequestMapping("/toLogin")
    public String toLogin() {
        return "login";
    }

    // 处理登录请求（不变）
    @RequestMapping(value = "/login", method = RequestMethod.POST)
    public String login(@RequestParam("username") String username,@RequestParam("password") String password, Model model) {
        for (User user : userList) {
            if (user.getUsername().equals(username) && user.getPassword().equals(password)) {
                model.addAttribute("user", user);
                return "home";
            }
        }
        model.addAttribute("error", "用户名或密码错误！");
        return "login";
    }
}